//
//  CLHash.m
//  Charles
//
//  Created by Charles on 2020/3/16.
//  Copyright © 2020 charles. All rights reserved.
//

#import "CLHash.h"

@implementation CLHashFind

char findFirstChar(char *cha) {
    // 定义最终查找结果变量
    char result = '\0';
    // 定义一个数组 用来存储各个字母出现的次数
    int array[256];
    // 对数组进行初始化操作
    for (int i = 0; i < 256; i++) {
        array[i] = 0;
    }
    // 定义一个指针 指向当前字符串头部
    char *p = cha;
    while (*p != '\0') {
        // 字母对应存储位置 进行出现次数+1操作
        array[*(p++)]++;
    }
    // 将p重新指向字符串头部
    p = cha;
    // 遍历出每个字母出现的次数
    while (*p != '\0') {
        // 遇到第一个出现次数为1的字符，打印结果
        if (array[*p] == 1) {
            result = *p;
            break;
        }
        // 反之继续向后遍历
        p++;
    }
    return result;
}

@end
